/*
Date:20210509 13:54PM
key:num[i]交换到对应的i位置,若撞车则重复
*/
class Solution {
public:
    void swap(int &a,int&b)
    {
        a=a^b;
        b=a^b;
        a=a^b;
    }
    int findRepeatNumber(vector<int>& nums)
    {
        for(int i=0;i<nums.size();i++)
        {
            if(nums[i]!=i)
            {
                if(nums[i]==nums[nums[i]])
                {
                    return nums[i];
                }
                else
                {
                    swap(nums[i],nums[nums[i]]);
                    i--;
                }
            }
        }
    return 0;
    }
};